package com.mingqijia.gassafety.webserver.response.workorder.asst;

import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 时刻助手工单创建返回
 * </p>
 *
 * @author guoliang.lao
 * @since 2021-04-27
 */
@Data
public class AsstWorkOrderResponse {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    private Long id;

    /**
     * 工单关联编号
     */
    private String relationNo;

    /**
     * 工单号
     */
    private String orderNo;

    /**
     * 外部工单号
     */
    private String outOrderCode;

    /**
     * 来源系统：0:业务办理1:时刻家app2:时刻助手app
     */
    private Integer fromSystem;

    /**
     * 户号
     */
    private String subsCode;

    /**
     * 姓名
     */
    private String custName;

    /**
     * 联系电话
     */
    private String phone;

    /**
     * 地址
     */
    private String address;

    /**
     * VCC用户ID
     */
    private String memberId;

    /**
     * 业务线编码
     */
    private String lineBizCode;

    /**
     * 业务线名称
     */
    private String lineBizName;

    /**
     * 业务类型编码
     */
    private String bizCode;

    /**
     * 业务类型名称
     */
    private String bizName;

    /**
     * 服务内容编码,多个逗号隔开
     */
    private String serviceCode;

    /**
     * 服务内容名称,多个逗号隔开
     */
    private String serviceName;

    /**
     * 工单状态0:待派单 5:待激活 10:已预派 20:已派单 30:已改约 40:已改派 50:服务中 60:已完成 70:已取消
     */
    private Integer orderStatus;

    /**
     * 完工结果1:不成功2:取消3:成功
     */
    private Integer completeResult;

    /**
     * 上门时间
     */
    private Date visitTime;

    /**
     * 服务者排班id
     */
    private Long schedulingId;

    /**
     * 预约日期
     */
    private Date bookDate;

    /**
     * 预约时间 例:2015-10-02 08:00-12:00
     */
    private String bookTime;

    /**
     * 打算上门时间
     */
    private Date planVisitDate;

    /**
     * 完成时间
     */
    private Date completedTime;

    /**
     * 不成功备注
     */
    private String failRemark;

    /**
     * 不成功原因
     */
    private String failReason;

    /**
     * 用户备注
     */
    private String userRemark;

    /**
     * 取消工单备注
     */
    private String cancelRemark;

    /**
     * 取消工单原因
     */
    private String cancelReason;

    /**
     * 工单备注(内部可见)
     */
    private String remark;

    /**
     * 服务者id
     */
    private Long servicerId;

    /**
     * 服务者名
     */
    private String servicerName;

    /**
     * 网格id
     */
    private Long gridId;

    /**
     * 网格名称
     */
    private String gridName;

    /**
     * 地址所属经纬度
     */
    private String location;

    /**
     * 跟催次数
     */
    private Integer urgeCount;

    /**
     * 预警次数
     */
    private Integer warnCount;

    /**
     * 上次跟催时间
     */
    private Date lastUrgeTime;

    /**
     * 创建人的时刻助手用户ID
     */
    private Long asstUserId;

    /**
     * 用户类型 C1-时刻助手C端用户 B1-时刻助手B端用用户 M1-时刻助手管理端用户
     */
    private String accountType;

    /**
     * 班次id
     */
    private Long scheduleId;

    /**
     * 班次名称
     */
    private String scheduleName;

    /**
     * 任务量id
     */
    private Long schedulingTaskAmountId;

    /**
     * 派单方式 0:系统派单 1:管理员派单 2:员工派单
     */
    private Integer dispatchMode;

    /**
     * 派单服务者id
     */
    private Long dispatchServicerId;

    /**
     * 派单服务者姓名
     */
    private String dispatchServicerName;

    /**
     * 工单用户id t_asst_user.id
     */
    private Long userId;

    /**
     * 派单时间
     */
    private Date dispatchTime;

    /**
     * 派单状态记录
     */
    private Integer dispatchFail;

    /**
     * 评价得分
     */
    private BigDecimal evaluateScore;

    /**
     * 工单优先级
     */
    private Integer priority;

    /**
     * 是否抢单 true:抢单 false:否
     */
    private Boolean checkSeizeOrder = false;

    /**
     * 实际地址
     */
    private String realAddress;

    /**
     * 其它备注
     */
    private String otherRemark;

    /**
     * 关联工单模板id
     */
    private Long orderTemplateId;

    /**
     * 是否删除 0-正常 1-删除
     */
    private Boolean isDelete;

    /**
     * 删除时间
     */
    private Date deleteTime;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 更新时间
     */
    private Date updateTime;

    /**
     * 更新时间，MySQL自动更新
     */
    private Date modifyTime;

    /**
     * 外部租户ID
     */
    private String spId;

    /**
     * 模版类型
     */
    private Integer  templateType;
}
